package service

import (
	"context"
	"fmt"
)

// 主程序的方法及数据
type Param struct {
	A, B int
	C    string
}

type Calculate int

// 返回数据
type Result struct {
	D int
}

// 计算方法
func (t *Calculate) Compute(cxt context.Context, args *Param, reply *Result) error {
	if args.C == "+" {
		reply.D = args.A + args.B
	} else if args.C == "-" {
		reply.D = args.A - args.B
	} else if args.C == "*" {
		reply.D = args.A * args.B
	} else if args.C == "/" {
		reply.D = args.A / args.B
	} else {
		reply.D = 0
	}
	return nil
}

type ResultStr struct {
	Str string
}

func (t *Calculate) Hello(cxt context.Context, args *Param, reply *ResultStr) error {
	reply.Str = fmt.Sprintf("连接的三个参数分别为%d,%d,%s", args.A, args.B, args.C)
	return nil
}
